package com.yjdb.sanyuantang.common.entity;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import io.swagger.v3.oas.annotations.media.Schema;


@Data
@TableName("app_coupons")
@Schema(name = "app_coupons")
public class AppCoupons implements Serializable {

    /**
    * 优惠卷id
    */
    @TableId(type = IdType.AUTO)
    @Schema(description="优惠卷id")
    private Long id;


    /**
    * 优惠卷名称
    */
    @TableField("name")
    @Schema(description="优惠卷名称")
    private String name;


    /**
    * 优惠卷描述
    */
    @TableField("content")
    @Schema(description="优惠卷描述")
    private String content;


    /**
    * 类型 1:折扣 2:次数/金额
    */
    @TableField("type")
    @Schema(description="类型 1:折扣 2:次数/金额")
    private Integer type;


    /**
    * 优惠内容(50-20代表满50-20,88代表88折,0-0代表全减)
    */
    @TableField("value")
    @Schema(description="优惠内容(50-20代表满50-20,88代表88折,0-0代表全减)")
    private String value;


    /**
    * 0 全场景 1 住宿 2 餐饮 
    */
    @TableField("scene")
    @Schema(description="0 全场景 1 住宿 2 餐饮 ")
    private Integer scene;


    /**
    * 是否启用 0 未启用 1已启用
    */
    @TableField("is_status")
    @Schema(description="是否启用 0 未启用 1已启用")
    private String isStatus;


    /**
    * 0 未删除 1已删除
    */
    @TableField("is_delete")
    @Schema(description="0 未删除 1已删除")
    private Integer isDelete;


    /**
    * 生效时间
    */
    @TableField("start_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Schema(description="生效时间")
    private Date startTime;


    /**
    * 失效时间
    */
    @TableField("end_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Schema(description="失效时间")
    private Date endTime;


    /**
    * 1 线上 2 线下
    */
    @TableField("range")
    @Schema(description="1 线上 2 线下")
    private Integer range;


    /**
    * 0 普通优惠卷 1 会员优惠卷
    */
    @TableField("member_type")
    @Schema(description="0 普通优惠卷 1 会员优惠卷")
    private Integer memberType;


    /**
    * 优惠卷发放初始数量
    */
    @TableField("num")
    @Schema(description="优惠卷发放初始数量")
    private Integer num;


    /**
    * 时间范围（13:00-15:00)
    */
    @TableField("range_time")
    @Schema(description="时间范围（13:00-15:00)")
    private String rangeTime;


    /**
    * 1 天 2月
    */
    @TableField("range_data")
    @Schema(description="1 天 2月")
    private Integer rangeData;


    /**
    * 使用次数
    */
    @TableField("use_time")
    @Schema(description="使用次数")
    private Integer useTime;


    private static final long serialVersionUID = 1L;
}
